/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package pt.ipleiria.estg.es1.minesfinder;

import java.util.ArrayList;

/**
 *
 * @author romeu
 */
public class TabelaRecords {
    
    private String nome;
    private long record;
    
    private ArrayList<TabelaRecordsListner> listners;
    
    public TabelaRecords()
    {
        this.nome = "Anónimo";
        this.record = 9999999;
        listners=new ArrayList<>();
    }
    
    public String getNome()
    {
        return this.nome;
    }
    
    public long getRecord()
    {
        return this.record;
    }
    
    public void setRecord(long time, String jogador)
    {
        if(time<record)
        {
            record = time;
            nome = jogador;
            notifyRecordesActualizados();
        }
    }
    
    public void addTabelaRecordsListner(TabelaRecordsListner listner)
    {
        listners.add(listner);
    }
    
    public void removeTabelaRecordsListner(TabelaRecordsListner listner)
    {
        listners.remove(listner);
    }
    
    private void notifyRecordesActualizados() 
    {     
        for (TabelaRecordsListner listner:listners)         
            listner.recordsAtualizados(this);
    }
}
